home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.006 / xemacs-1 / lib / xemacs-19.13 / info / pcl-cvs.info-1 < prev    next >
Encoding:
GNU Info File  |  1995-09-01  |  49.3 KB  |  1,175 lines

  1. This is Info file ../info/pcl-cvs.info, produced by Makeinfo-1.55 from
  2. the input file pcl-cvs.texinfo.
  3.  
  4.    Copyright (C) 1992 Per Cederqvist
  5.  
  6.    Permission is granted to make and distribute verbatim copies of this
  7. manual provided the copyright notice and this permission notice are
  8. preserved on all copies.
  9.  
  10.    Permission is granted to copy and distribute modified versions of
  11. this manual under the conditions for verbatim copying, provided also
  12. that the section entitled "GNU General Public License" is included
  13. exactly as in the original, and provided that the entire resulting
  14. derived work is distributed under the terms of a permission notice
  15. identical to this one.
  16.  
  17.    Permission is granted to copy and distribute translations of this
  18. manual into another language, under the above conditions for modified
  19. versions, except that the section entitled "GNU General Public License"
  20. and this permission notice may be included in translations approved by
  21. the Free Software Foundation instead of in the original English.
  22.  
  23. 
  24. File: pcl-cvs.info,  Node: Top,  Next: Copying,  Prev: (dir),  Up: (dir)
  25.  
  26.    This info manual describes pcl-cvs which is a GNU Emacs front-end to
  27. CVS.  It works with CVS version 1.3.  This manual is updated to release
  28. 1.05 of pcl-cvs.
  29.  
  30. * Menu:
  31.  
  32. * Copying::                     GNU General Public License
  33. * Installation::                How to install pcl-cvs on your system.
  34. * About pcl-cvs::               Authors and ftp sites.
  35.  
  36. * Getting started::             An introduction with a walk-through example.
  37. * Buffer contents::             An explanation of the buffer contents.
  38. * Commands::                    All commands, grouped by type.
  39.  
  40. * Customization::               How you can tailor pcl-cvs to suit your needs.
  41. * Future enhancements::         Future enhancements of pcl-cvs.
  42. * Bugs::                        Bugs (known and unknown).
  43. * Function and Variable Index::  List of functions and variables.
  44. * Concept Index::               List of concepts.
  45. * Key Index::                   List of keystrokes.
  46.  
  47.  -- The Detailed Node Listing --
  48.  
  49. Installation
  50.  
  51. * Pcl-cvs installation::        How to install pcl-cvs on your system.
  52. * On-line manual installation::  How to install the on-line manual.
  53. * Typeset manual installation::  How to create typeset documentation
  54.                                  about pcl-cvs.
  55.  
  56. About pcl-cvs
  57.  
  58. * Contributors::                Contributors to pcl-cvs.
  59. * Archives::                    Where can I get a copy of Pcl-Cvs?
  60.  
  61. Buffer contents
  62.  
  63. * File status::                 The meaning of the second field.
  64. * Selected files::              How selection works.
  65.  
  66. Commands
  67.  
  68. * Updating the directory::      Commands to update the local directory
  69. * Movement commands::           How to move up and down in the buffer
  70. * Marking files::               How to mark files that other commands
  71.                                 will later operate on.
  72. * Committing changes::          Checking in your modifications to the
  73.                                 CVS repository.
  74. * Editing files::               Loading files into Emacs.
  75. * Getting info about files::    Display the log and status of files.
  76. * Adding and removing files::   Adding and removing files
  77. * Undoing changes::             Undoing changes
  78. * Removing handled entries::    Uninteresting lines can easily be removed.
  79. * Ignoring files::              Telling CVS to ignore generated files.
  80. * Viewing differences::         Commands to `diff' different versions.
  81. * Emerge::
  82. * Reverting your buffers::      Reverting your buffers
  83. * Miscellaneous commands::      Miscellaneous commands
  84.  
  85. 
  86. File: pcl-cvs.info,  Node: Copying,  Next: Installation,  Prev: Top,  Up: Top
  87.  
  88. GNU GENERAL PUBLIC LICENSE
  89. **************************
  90.  
  91.                          Version 2, June 1991
  92.  
  93.      Copyright (C) 1989, 1991 Free Software Foundation, Inc.
  94.      675 Mass Ave, Cambridge, MA 02139, USA
  95.      
  96.      Everyone is permitted to copy and distribute verbatim copies
  97.      of this license document, but changing it is not allowed.
  98.  
  99. Preamble
  100. ========
  101.  
  102.    The licenses for most software are designed to take away your
  103. freedom to share and change it.  By contrast, the GNU General Public
  104. License is intended to guarantee your freedom to share and change free
  105. software--to make sure the software is free for all its users.  This
  106. General Public License applies to most of the Free Software
  107. Foundation's software and to any other program whose authors commit to
  108. using it.  (Some other Free Software Foundation software is covered by
  109. the GNU Library General Public License instead.)  You can apply it to
  110. your programs, too.
  111.  
  112.    When we speak of free software, we are referring to freedom, not
  113. price.  Our General Public Licenses are designed to make sure that you
  114. have the freedom to distribute copies of free software (and charge for
  115. this service if you wish), that you receive source code or can get it
  116. if you want it, that you can change the software or use pieces of it in
  117. new free programs; and that you know you can do these things.
  118.  
  119.    To protect your rights, we need to make restrictions that forbid
  120. anyone to deny you these rights or to ask you to surrender the rights.
  121. These restrictions translate to certain responsibilities for you if you
  122. distribute copies of the software, or if you modify it.
  123.  
  124.    For example, if you distribute copies of such a program, whether
  125. gratis or for a fee, you must give the recipients all the rights that
  126. you have.  You must make sure that they, too, receive or can get the
  127. source code.  And you must show them these terms so they know their
  128. rights.
  129.  
  130.    We protect your rights with two steps: (1) copyright the software,
  131. and (2) offer you this license which gives you legal permission to copy,
  132. distribute and/or modify the software.
  133.  
  134.    Also, for each author's protection and ours, we want to make certain
  135. that everyone understands that there is no warranty for this free
  136. software.  If the software is modified by someone else and passed on, we
  137. want its recipients to know that what they have is not the original, so
  138. that any problems introduced by others will not reflect on the original
  139. authors' reputations.
  140.  
  141.    Finally, any free program is threatened constantly by software
  142. patents.  We wish to avoid the danger that redistributors of a free
  143. program will individually obtain patent licenses, in effect making the
  144. program proprietary.  To prevent this, we have made it clear that any
  145. patent must be licensed for everyone's free use or not licensed at all.
  146.  
  147.    The precise terms and conditions for copying, distribution and
  148. modification follow.
  149.  
  150.     TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
  151.  
  152.   1. This License applies to any program or other work which contains a
  153.      notice placed by the copyright holder saying it may be distributed
  154.      under the terms of this General Public License.  The "Program",
  155.      below, refers to any such program or work, and a "work based on
  156.      the Program" means either the Program or any derivative work under
  157.      copyright law: that is to say, a work containing the Program or a
  158.      portion of it, either verbatim or with modifications and/or
  159.      translated into another language.  (Hereinafter, translation is
  160.      included without limitation in the term "modification".)  Each
  161.      licensee is addressed as "you".
  162.  
  163.      Activities other than copying, distribution and modification are
  164.      not covered by this License; they are outside its scope.  The act
  165.      of running the Program is not restricted, and the output from the
  166.      Program is covered only if its contents constitute a work based on
  167.      the Program (independent of having been made by running the
  168.      Program).  Whether that is true depends on what the Program does.
  169.  
  170.   2. You may copy and distribute verbatim copies of the Program's
  171.      source code as you receive it, in any medium, provided that you
  172.      conspicuously and appropriately publish on each copy an appropriate
  173.      copyright notice and disclaimer of warranty; keep intact all the
  174.      notices that refer to this License and to the absence of any
  175.      warranty; and give any other recipients of the Program a copy of
  176.      this License along with the Program.
  177.  
  178.      You may charge a fee for the physical act of transferring a copy,
  179.      and you may at your option offer warranty protection in exchange
  180.      for a fee.
  181.  
  182.   3. You may modify your copy or copies of the Program or any portion
  183.      of it, thus forming a work based on the Program, and copy and
  184.      distribute such modifications or work under the terms of Section 1
  185.      above, provided that you also meet all of these conditions:
  186.  
  187.        a. You must cause the modified files to carry prominent notices
  188.           stating that you changed the files and the date of any change.
  189.  
  190.        b. You must cause any work that you distribute or publish, that
  191.           in whole or in part contains or is derived from the Program
  192.           or any part thereof, to be licensed as a whole at no charge
  193.           to all third parties under the terms of this License.
  194.  
  195.        c. If the modified program normally reads commands interactively
  196.           when run, you must cause it, when started running for such
  197.           interactive use in the most ordinary way, to print or display
  198.           an announcement including an appropriate copyright notice and
  199.           a notice that there is no warranty (or else, saying that you
  200.           provide a warranty) and that users may redistribute the
  201.           program under these conditions, and telling the user how to
  202.           view a copy of this License.  (Exception: if the Program
  203.           itself is interactive but does not normally print such an
  204.           announcement, your work based on the Program is not required
  205.           to print an announcement.)
  206.  
  207.      These requirements apply to the modified work as a whole.  If
  208.      identifiable sections of that work are not derived from the
  209.      Program, and can be reasonably considered independent and separate
  210.      works in themselves, then this License, and its terms, do not
  211.      apply to those sections when you distribute them as separate
  212.      works.  But when you distribute the same sections as part of a
  213.      whole which is a work based on the Program, the distribution of
  214.      the whole must be on the terms of this License, whose permissions
  215.      for other licensees extend to the entire whole, and thus to each
  216.      and every part regardless of who wrote it.
  217.  
  218.      Thus, it is not the intent of this section to claim rights or
  219.      contest your rights to work written entirely by you; rather, the
  220.      intent is to exercise the right to control the distribution of
  221.      derivative or collective works based on the Program.
  222.  
  223.      In addition, mere aggregation of another work not based on the
  224.      Program with the Program (or with a work based on the Program) on
  225.      a volume of a storage or distribution medium does not bring the
  226.      other work under the scope of this License.
  227.  
  228.   4. You may copy and distribute the Program (or a work based on it,
  229.      under Section 2) in object code or executable form under the terms
  230.      of Sections 1 and 2 above provided that you also do one of the
  231.      following:
  232.  
  233.        a. Accompany it with the complete corresponding machine-readable
  234.           source code, which must be distributed under the terms of
  235.           Sections 1 and 2 above on a medium customarily used for
  236.           software interchange; or,
  237.  
  238.        b. Accompany it with a written offer, valid for at least three
  239.           years, to give any third party, for a charge no more than your
  240.           cost of physically performing source distribution, a complete
  241.           machine-readable copy of the corresponding source code, to be
  242.           distributed under the terms of Sections 1 and 2 above on a
  243.           medium customarily used for software interchange; or,
  244.  
  245.        c. Accompany it with the information you received as to the offer
  246.           to distribute corresponding source code.  (This alternative is
  247.           allowed only for noncommercial distribution and only if you
  248.           received the program in object code or executable form with
  249.           such an offer, in accord with Subsection b above.)
  250.  
  251.      The source code for a work means the preferred form of the work for
  252.      making modifications to it.  For an executable work, complete
  253.      source code means all the source code for all modules it contains,
  254.      plus any associated interface definition files, plus the scripts
  255.      used to control compilation and installation of the executable.
  256.      However, as a special exception, the source code distributed need
  257.      not include anything that is normally distributed (in either
  258.      source or binary form) with the major components (compiler,
  259.      kernel, and so on) of the operating system on which the executable
  260.      runs, unless that component itself accompanies the executable.
  261.  
  262.      If distribution of executable or object code is made by offering
  263.      access to copy from a designated place, then offering equivalent
  264.      access to copy the source code from the same place counts as
  265.      distribution of the source code, even though third parties are not
  266.      compelled to copy the source along with the object code.
  267.  
  268.   5. You may not copy, modify, sublicense, or distribute the Program
  269.      except as expressly provided under this License.  Any attempt
  270.      otherwise to copy, modify, sublicense or distribute the Program is
  271.      void, and will automatically terminate your rights under this
  272.      License.  However, parties who have received copies, or rights,
  273.      from you under this License will not have their licenses
  274.      terminated so long as such parties remain in full compliance.
  275.  
  276.   6. You are not required to accept this License, since you have not
  277.      signed it.  However, nothing else grants you permission to modify
  278.      or distribute the Program or its derivative works.  These actions
  279.      are prohibited by law if you do not accept this License.
  280.      Therefore, by modifying or distributing the Program (or any work
  281.      based on the Program), you indicate your acceptance of this
  282.      License to do so, and all its terms and conditions for copying,
  283.      distributing or modifying the Program or works based on it.
  284.  
  285.   7. Each time you redistribute the Program (or any work based on the
  286.      Program), the recipient automatically receives a license from the
  287.      original licensor to copy, distribute or modify the Program
  288.      subject to these terms and conditions.  You may not impose any
  289.      further restrictions on the recipients' exercise of the rights
  290.      granted herein.  You are not responsible for enforcing compliance
  291.      by third parties to this License.
  292.  
  293.   8. If, as a consequence of a court judgment or allegation of patent
  294.      infringement or for any other reason (not limited to patent
  295.      issues), conditions are imposed on you (whether by court order,
  296.      agreement or otherwise) that contradict the conditions of this
  297.      License, they do not excuse you from the conditions of this
  298.      License.  If you cannot distribute so as to satisfy simultaneously
  299.      your obligations under this License and any other pertinent
  300.      obligations, then as a consequence you may not distribute the
  301.      Program at all.  For example, if a patent license would not permit
  302.      royalty-free redistribution of the Program by all those who
  303.      receive copies directly or indirectly through you, then the only
  304.      way you could satisfy both it and this License would be to refrain
  305.      entirely from distribution of the Program.
  306.  
  307.      If any portion of this section is held invalid or unenforceable
  308.      under any particular circumstance, the balance of the section is
  309.      intended to apply and the section as a whole is intended to apply
  310.      in other circumstances.
  311.  
  312.      It is not the purpose of this section to induce you to infringe any
  313.      patents or other property right claims or to contest validity of
  314.      any such claims; this section has the sole purpose of protecting
  315.      the integrity of the free software distribution system, which is
  316.      implemented by public license practices.  Many people have made
  317.      generous contributions to the wide range of software distributed
  318.      through that system in reliance on consistent application of that
  319.      system; it is up to the author/donor to decide if he or she is
  320.      willing to distribute software through any other system and a
  321.      licensee cannot impose that choice.
  322.  
  323.      This section is intended to make thoroughly clear what is believed
  324.      to be a consequence of the rest of this License.
  325.  
  326.   9. If the distribution and/or use of the Program is restricted in
  327.      certain countries either by patents or by copyrighted interfaces,
  328.      the original copyright holder who places the Program under this
  329.      License may add an explicit geographical distribution limitation
  330.      excluding those countries, so that distribution is permitted only
  331.      in or among countries not thus excluded.  In such case, this
  332.      License incorporates the limitation as if written in the body of
  333.      this License.
  334.  
  335.  10. The Free Software Foundation may publish revised and/or new
  336.      versions of the General Public License from time to time.  Such
  337.      new versions will be similar in spirit to the present version, but
  338.      may differ in detail to address new problems or concerns.
  339.  
  340.      Each version is given a distinguishing version number.  If the
  341.      Program specifies a version number of this License which applies
  342.      to it and "any later version", you have the option of following
  343.      the terms and conditions either of that version or of any later
  344.      version published by the Free Software Foundation.  If the Program
  345.      does not specify a version number of this License, you may choose
  346.      any version ever published by the Free Software Foundation.
  347.  
  348.  11. If you wish to incorporate parts of the Program into other free
  349.      programs whose distribution conditions are different, write to the
  350.      author to ask for permission.  For software which is copyrighted
  351.      by the Free Software Foundation, write to the Free Software
  352.      Foundation; we sometimes make exceptions for this.  Our decision
  353.      will be guided by the two goals of preserving the free status of
  354.      all derivatives of our free software and of promoting the sharing
  355.      and reuse of software generally.
  356.  
  357.                                 NO WARRANTY
  358.  
  359.  12. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
  360.      WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
  361.      LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
  362.      HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT
  363.      WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT
  364.      NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  365.      FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE
  366.      QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
  367.      PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
  368.      SERVICING, REPAIR OR CORRECTION.
  369.  
  370.  13. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
  371.      WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
  372.      MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
  373.      LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
  374.      INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
  375.      INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
  376.      DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
  377.      OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY
  378.      OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
  379.      ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
  380.  
  381.                       END OF TERMS AND CONDITIONS
  382.  
  383. Appendix: How to Apply These Terms to Your New Programs
  384. =======================================================
  385.  
  386.    If you develop a new program, and you want it to be of the greatest
  387. possible use to the public, the best way to achieve this is to make it
  388. free software which everyone can redistribute and change under these
  389. terms.
  390.  
  391.    To do so, attach the following notices to the program.  It is safest
  392. to attach them to the start of each source file to most effectively
  393. convey the exclusion of warranty; and each file should have at least
  394. the "copyright" line and a pointer to where the full notice is found.
  395.  
  396.      ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
  397.      Copyright (C) 19YY  NAME OF AUTHOR
  398.      
  399.      This program is free software; you can redistribute it and/or modify
  400.      it under the terms of the GNU General Public License as published by
  401.      the Free Software Foundation; either version 2 of the License, or
  402.      (at your option) any later version.
  403.      
  404.      This program is distributed in the hope that it will be useful,
  405.      but WITHOUT ANY WARRANTY; without even the implied warranty of
  406.      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  407.      GNU General Public License for more details.
  408.      
  409.      You should have received a copy of the GNU General Public License
  410.      along with this program; if not, write to the Free Software
  411.      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  412.  
  413.    Also add information on how to contact you by electronic and paper
  414. mail.
  415.  
  416.    If the program is interactive, make it output a short notice like
  417. this when it starts in an interactive mode:
  418.  
  419.      Gnomovision version 69, Copyright (C) 19YY NAME OF AUTHOR
  420.      Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
  421.      This is free software, and you are welcome to redistribute it
  422.      under certain conditions; type `show c' for details.
  423.  
  424.    The hypothetical commands `show w' and `show c' should show the
  425. appropriate parts of the General Public License.  Of course, the
  426. commands you use may be called something other than `show w' and `show
  427. c'; they could even be mouse-clicks or menu items--whatever suits your
  428. program.
  429.  
  430.    You should also get your employer (if you work as a programmer) or
  431. your school, if any, to sign a "copyright disclaimer" for the program,
  432. if necessary.  Here is a sample; alter the names:
  433.  
  434.      Yoyodyne, Inc., hereby disclaims all copyright interest in the program
  435.      `Gnomovision' (which makes passes at compilers) written by James Hacker.
  436.      
  437.      SIGNATURE OF TY COON, 1 April 1989
  438.      Ty Coon, President of Vice
  439.  
  440.    This General Public License does not permit incorporating your
  441. program into proprietary programs.  If your program is a subroutine
  442. library, you may consider it more useful to permit linking proprietary
  443. applications with the library.  If this is what you want to do, use the
  444. GNU Library General Public License instead of this License.
  445.  
  446. 
  447. File: pcl-cvs.info,  Node: Installation,  Next: About pcl-cvs,  Prev: Copying,  Up: Top
  448.  
  449. Installation
  450. ************
  451.  
  452.    This section describes the installation of pcl-cvs, the GNU Emacs CVS
  453. front-end.  You should install not only the elisp files themselves, but
  454. also the on-line documentation so that your users will know how to use
  455. it.  You can create typeset documentation from the file
  456. `pcl-cvs.texinfo' as well as an on-line info file.  The following steps
  457. are also described in the file `INSTALL' in the source directory.
  458.  
  459. * Menu:
  460.  
  461. * Pcl-cvs installation::        How to install pcl-cvs on your system.
  462. * On-line manual installation::  How to install the on-line manual.
  463. * Typeset manual installation::  How to create typeset documentation
  464.                                  about pcl-cvs.
  465.  
  466. 
  467. File: pcl-cvs.info,  Node: Pcl-cvs installation,  Next: On-line manual installation,  Prev: Installation,  Up: Installation
  468.  
  469. Installation of the pcl-cvs program
  470. ===================================
  471.  
  472.   1. Edit the file `Makefile' to reflect the situation at your site.
  473.      The only things you have to change is the definition of `lispdir'
  474.      and `infodir'.  The elisp files will be copied to `lispdir', and
  475.      the info file to `infodir'.
  476.  
  477.   2. Configure pcl-cvs.el
  478.  
  479.      There are a couple of paths that you have to check to make sure
  480.      that they match you system.  They appear early in the file
  481.      pcl-cvs.el.
  482.  
  483.      *NOTE:*  If your system is running emacs 18.57 or earlier you MUST
  484.      uncomment the line that says:
  485.  
  486.           (setq delete-exited-processes nil)
  487.  
  488.      Setting `delete-exited-processes' to `nil' works around a bug in
  489.      emacs that causes it to dump core.  The bug was fixed in emacs
  490.      18.58.
  491.  
  492.   3. Release 1.05 and later of pcl-cvs requires parts of the Elib
  493.      library, version 0.07 or later.  Elib is available via anonymous
  494.      ftp from prep.ai.mit.edu in `pub/gnu/elib-0.07.tar.z', and from a
  495.      lot of other sites that mirrors prep.  Get Elib, and install it,
  496.      before proceeding.
  497.  
  498.   4. Type `make install' in the source directory.  This will
  499.      byte-compile all `.el' files and copy both the `.el' and the
  500.      `.elc' into the directory you specified in step 1.
  501.  
  502.      If you don't want to install the `.el' files but only the `.elc'
  503.      files (the byte-compiled files), you can type ``make install_elc''
  504.      instead of ``make install''.
  505.  
  506.      If you only want to create the compiled elisp files, but don't
  507.      want to install them, you can type `make elcfiles' instead.  This
  508.      is what happens if you only type `make' without parameters.
  509.  
  510.   5. Edit the file `default.el' in your emacs lisp directory (usually
  511.      `/usr/gnu/emacs/lisp' or something similar) and enter the contents
  512.      of the file `pcl-cvs-startup.el' into it.  It contains a couple of
  513.      `auto-load's that facilitates the use of pcl-cvs.
  514.  
  515.  
  516. 
  517. File: pcl-cvs.info,  Node: On-line manual installation,  Next: Typeset manual installation,  Prev: Pcl-cvs installation,  Up: Installation
  518.  
  519. Installation of the on-line manual.
  520. ===================================
  521.  
  522.   1. Create the info file `pcl-cvs' from `pcl-cvs.texinfo' by typing
  523.      `make info'.  If you don't have the program `makeinfo' you can get
  524.      it by anonymous ftp from e.g. `ftp.gnu.ai.mit.edu' as
  525.      `pub/gnu/texinfo-2.14.tar.Z' (there might be a newer version there
  526.      when you read this), or you could use the preformatted info file
  527.      `pcl-cvs.info' that is included in the distribution (type `cp
  528.      pcl-cvs.info pcl-cvs').
  529.  
  530.   2. Move the info file `pcl-cvs' to your standard info directory.
  531.      This might be called something like `/usr/gnu/emacs/info'.
  532.  
  533.   3. Edit the file `dir' in the info directory and enter one line to
  534.      contain a pointer to the info file `pcl-cvs'.  The line can, for
  535.      instance, look like this:
  536.  
  537.           * Pcl-cvs: (pcl-cvs).       An Emacs front-end to CVS.
  538.  
  539. 
  540. File: pcl-cvs.info,  Node: Typeset manual installation,  Prev: On-line manual installation,  Up: Installation
  541.  
  542. How to make typeset documentation from pcl-cvs.texinfo
  543. ======================================================
  544.  
  545.    If you have TeX installed at your site, you can make a typeset manual
  546. from `pcl-cvs.texinfo'.
  547.  
  548.   1. Run TeX by typing ``make pcl-cvs.dvi''.  You will not get the
  549.      indices unless you have the `texindex' program.
  550.  
  551.   2. Convert the resulting device independent file `pcl-cvs.dvi' to a
  552.      form which your printer can output and print it.  If you have a
  553.      postscript printer there is a program, `dvi2ps', which does.  There
  554.      is also a program which comes together with TeX, `dvips', which
  555.      you can use.
  556.  
  557.  
  558. 
  559. File: pcl-cvs.info,  Node: About pcl-cvs,  Next: Getting started,  Prev: Installation,  Up: Top
  560.  
  561. About pcl-cvs
  562. *************
  563.  
  564.    Pcl-cvs is a front-end to CVS version 1.3.  It integrates the most
  565. frequently used CVS commands into emacs.
  566.  
  567. * Menu:
  568.  
  569. * Contributors::                Contributors to pcl-cvs.
  570. * Archives::                    Where can I get a copy of Pcl-Cvs?
  571.  
  572. 
  573. File: pcl-cvs.info,  Node: Contributors,  Next: Archives,  Prev: About pcl-cvs,  Up: About pcl-cvs
  574.  
  575. Contributors to pcl-cvs
  576. =======================
  577.  
  578.    Contributions to the package are welcome.  I have limited time to
  579. work on this project, but I will gladly add any code that you
  580. contribute to me to this package (*note Bugs::.).
  581.  
  582.    The following persons have made contributions to pcl-cvs.
  583.  
  584.    * Brian Berliner wrote CVS, together with some other contributors.
  585.      Without his work on CVS this package would be useless...
  586.  
  587.    * Per Cederqvist wrote most of the otherwise unattributed functions
  588.      in pcl-cvs as well as all documentation.
  589.  
  590.    * Inge Wallin (`inge@lysator.liu.se') wrote the skeleton to
  591.      `pcl-cvs.texinfo', and gave useful comments on it.  He also wrote
  592.      the files `elib-node.el' and `compile-all.el'.  The file
  593.      `cookie.el' was inspired by Inge.
  594.  
  595.    * Linus Tolke (`linus@lysator.liu.se') contributed useful comments
  596.      on both the functionality and the documentation.
  597.  
  598.    * Jamie Zawinski (`jwz@lucid.com') contributed `pcl-cvs-lucid.el'.
  599.  
  600.    * Leif Lonnblad contributed RCVS support.
  601.  
  602.    Apart from these, a lot of people have send me suggestions, ideas,
  603. requests, bug reports and encouragement.  Thanks a lot!  Without your
  604. there would be no new releases of pcl-cvs.
  605.  
  606. 
  607. File: pcl-cvs.info,  Node: Archives,  Prev: Contributors,  Up: About pcl-cvs
  608.  
  609. Where can I get pcl-cvs?
  610. ========================
  611.  
  612.    The latest release of pcl-cvs can be fetched via anonymous ftp from
  613. `ftp.lysator.liu.se', (IP no. 130.236.254.1) in the directory
  614. `pub/emacs'.  If you don't live in Scandinavia you should probably
  615. check with archie to see if there is a site closer to you that archives
  616. pcl-cvs.
  617.  
  618.    New releases will be announced to appropriate newsgroups.  If you
  619. send your email address to me I will add you to my list of people to
  620. mail when I make a new release.
  621.  
  622. 
  623. File: pcl-cvs.info,  Node: Getting started,  Next: Buffer contents,  Prev: About pcl-cvs,  Up: Top
  624.  
  625. Getting started
  626. ***************
  627.  
  628.    This document assumes that you know what CVS is, and that you at
  629. least knows the fundamental concepts of CVS.  If that is not the case
  630. you should read the man page for CVS.
  631.  
  632.    Pcl-cvs is only useful once you have checked out a module.  So before
  633. you invoke it you must have a copy of a module somewhere in the file
  634. system.
  635.  
  636.    You invoke pcl-cvs by typing `M-x cvs-update RET'.  If your emacs
  637. responds with `[No match]' your system administrator has not installed
  638. pcl-cvs properly.  Try `M-x load-library RET pcl-cvs RET'.  If that
  639. also fails - talk to your root.  If it succeeds you might put this line
  640. in your `.emacs' file so that you don't have to type the `load-library'
  641. command every time you wish to use pcl-cvs:
  642.  
  643.      (autoload 'cvs-update "pcl-cvs" nil t)
  644.  
  645.    The function `cvs-update' will ask for a directory.  The command
  646. `cvs update' will be run in that directory.  (It should contain files
  647. that have been checked out from a CVS archive.)  The output from `cvs'
  648. will be parsed and presented in a table in a buffer called `*cvs*'.  It
  649. might look something like this:
  650.  
  651.      PCL-CVS release 1.05.
  652.      
  653.      In directory /users/ceder/FOO/test:
  654.        Updated     bar
  655.        Updated     file.txt
  656.        Modified ci namechange
  657.        Updated     newer
  658.      
  659.      In directory /users/ceder/FOO/test/sub:
  660.        Modified ci ChangeLog
  661.      ---------- End -----
  662.  
  663.    In this example the three files (`bar', `file.txt' and `newer') that
  664. are marked with `Updated' have been copied from the CVS repository to
  665. `/users/ceder/FOO/test/' since someone else have checked in newer
  666. versions of them.  Two files (`namechange' and `sub/ChangeLog') have
  667. been modified locally, and needs to be checked in.
  668.  
  669.    You can move the cursor up and down in the buffer with `C-n' and
  670. `C-p' or `n' and `p'.  If you press `c' on one of the `Modified' files
  671. that file will be checked in to the CVS repository. *Note Committing
  672. changes::.  You can press `x' to get rid of the "uninteresting" files
  673. that have only been `Updated' (and don't require any further action
  674. from you).
  675.  
  676.    You can also easily get a `diff' between your modified file and the
  677. base version that you started from, and you can get the output from
  678. `cvs log' and `cvs status' on the listed files simply by pressing a key
  679. (*note Getting info about files::.).
  680.  
  681. 
  682. File: pcl-cvs.info,  Node: Buffer contents,  Next: Commands,  Prev: Getting started,  Up: Top
  683.  
  684. Buffer contents
  685. ***************
  686.  
  687.    The display contains four columns.  They contain, from left to right:
  688.  
  689.    * An asterisk when the file is "marked" (*note Selected files::.).
  690.  
  691.    * The status of the file.  See *Note File status::, for more
  692.      information.
  693.  
  694.    * A "need to be checked in"-marker (`ci').
  695.  
  696.    * The file name.
  697.  
  698. * Menu:
  699.  
  700. * File status::                 The meaning of the second field.
  701. * Selected files::              How selection works.
  702.  
  703. 
  704. File: pcl-cvs.info,  Node: File status,  Next: Selected files,  Prev: Buffer contents,  Up: Buffer contents
  705.  
  706. File status
  707. ===========
  708.  
  709.    The `file status' field can have the following values:
  710.  
  711. `Updated'
  712.      The file was brought up to date with respect to the repository.
  713.      This is done for any file that exists in the repository but not in
  714.      your source, and for files that you haven't changed but are not
  715.      the most recent versions available in the repository.
  716.  
  717. `Modified'
  718.      The file is modified in  your  working  directory, and there was no
  719.      modification to the same file in the repository.
  720.  
  721. `Merged'
  722.      The file is modified in your working directory, and there were
  723.      modifications in the repository as well as in your copy, but they
  724.      were merged successfully, without conflict, in your working
  725.      directory.
  726.  
  727. `Conflict'
  728.      A conflict was detected while trying to merge your changes to FILE
  729.      with changes from the source repository.  FILE (the copy in your
  730.      working directory) is now the output of the `rcsmerge' command on
  731.      the two versions; an unmodified copy of your file is also in your
  732.      working directory, with the name `.#FILE.VERSION', where VERSION
  733.      is the RCS revision that your modified file started from.  *Note
  734.      Viewing differences::, for more details.
  735.  
  736. `Added'
  737.      The file has been added by you, but it still needs to be checked
  738.      in to the repository.
  739.  
  740. `Removed'
  741.      The file has been removed by you, but it needs to be checked in to
  742.      the repository.  You can resurrect it by typing `a' (*note Adding
  743.      and removing files::.).
  744.  
  745. `Unknown'
  746.      A file that was detected in your directory, but that neither
  747.      appears in the repository, nor is present on the list of files
  748.      that CVS should ignore.
  749.  
  750.    There are also a few special cases, that rarely occur, which have
  751. longer strings in the fields:
  752.  
  753. `Removed from repository'
  754.      The file has been removed from your directory since someone has
  755.      removed it from the repository.  (It is still present in the Attic
  756.      directory, so no permanent loss has occurred).  This, unlike the
  757.      other entries in this table, is not an error condition.
  758.  
  759. `Removed from repository, changed by you'
  760.      You have modified a file that someone have removed from the
  761.      repository.  You can correct this situation by removing the file
  762.      manually (see *note Adding and removing files::.).
  763.  
  764. `Removed by you, changed in repository'
  765.      You have removed a file, and before you committed the removal
  766.      someone committed a change to that file.  You could use `a' to
  767.      resurrect the file (see *note Adding and removing files::.).
  768.  
  769. `Move away FILE - it is in the way'
  770.      For some reason CVS does not like the file FILE.  Rename or remove
  771.      it.
  772.  
  773. `This repository is missing! Remove this dir manually.'
  774.      It is impossible to remove a directory in the CVS repository in a
  775.      clean way.  Someone have tried to remove one, and CVS gets
  776.      confused.  Remove your copy of the directory.
  777.  
  778. 
  779. File: pcl-cvs.info,  Node: Selected files,  Prev: File status,  Up: Buffer contents
  780.  
  781. Selected files
  782. ==============
  783.  
  784.    Many of the commands works on the current set of "selected" files.
  785.  
  786.    * If there are any files that are marked they constitute the set of
  787.      selected files.
  788.  
  789.    * Otherwise, if the cursor points to a file, that file is the
  790.      selected file.
  791.  
  792.    * Otherwise, if the cursor points to a directory, all the files in
  793.      that directory that appears in the buffer are the selected files.
  794.  
  795.    This scheme might seem a little complicated, but once one get used to
  796. it, it is quite powerful.
  797.  
  798.    *Note Marking files:: tells how you mark and unmark files.
  799.  
  800. 
  801. File: pcl-cvs.info,  Node: Commands,  Next: Customization,  Prev: Buffer contents,  Up: Top
  802.  
  803. Commands
  804. ********
  805.  
  806.    The nodes in this menu contains explanations about all the commands
  807. that you can use in pcl-cvs.  They are grouped together by type.
  808.  
  809. * Menu:
  810.  
  811. * Updating the directory::      Commands to update the local directory
  812. * Movement commands::           How to move up and down in the buffer
  813. * Marking files::               How to mark files that other commands
  814.                                 will later operate on.
  815. * Committing changes::          Checking in your modifications to the
  816.                                 CVS repository.
  817. * Editing files::               Loading files into Emacs.
  818. * Getting info about files::    Display the log and status of files.
  819. * Adding and removing files::   Adding and removing files
  820. * Undoing changes::             Undoing changes
  821. * Removing handled entries::    Uninteresting lines can easily be removed.
  822. * Ignoring files::              Telling CVS to ignore generated files.
  823. * Viewing differences::         Commands to `diff' different versions.
  824. * Emerge::
  825. * Reverting your buffers::      Reverting your buffers
  826. * Miscellaneous commands::      Miscellaneous commands
  827.  
  828. 
  829. File: pcl-cvs.info,  Node: Updating the directory,  Next: Movement commands,  Prev: Commands,  Up: Commands
  830.  
  831. Updating the directory
  832. ======================
  833.  
  834. `M-x cvs-update'
  835.      Run a `cvs update' command.  You will be asked for the directory in
  836.      which the `cvs update' will be run.  The output will be parsed by
  837.      pcl-cvs, and the result printed in the `*cvs*' buffer (see *note
  838.      Buffer contents::. for a description of the contents).
  839.  
  840.      By default, `cvs-update' will descend recursively into
  841.      subdirectories.  You can avoid that behavior by giving a prefix
  842.      argument to it (e.g., by typing `C-u M-x cvs-update RET').
  843.  
  844.      All other commands in pcl-cvs requires that you have a `*cvs*'
  845.      buffer.  This is the command that you use to get one.
  846.  
  847.      CVS uses lock files in the repository to ensure the integrity of
  848.      the data files in the repository.  They might be left behind i.e.
  849.      if a workstation crashes in the middle of a CVS operation.  CVS
  850.      outputs a message when it is waiting for a lock file to go away.
  851.      Pcl-cvs will show the same message in the *cvs* buffer, together
  852.      with instructions for deleting the lock files.  You should
  853.      normally not have to delete them manually -- just wait a little
  854.      while and the problem should fix itself.  But if the lock files
  855.      doesn't disappear you can delete them with `M-x cvs-delete-lock
  856.      RET'.
  857.  
  858. `g'
  859.      This will run `cvs update' again.  It will always use the same
  860.      buffer that was used with the previous `cvs update'.  Give a prefix
  861.      argument to avoid descending into subdirectories.  This runs the
  862.      command `cvs-mode-update-no-prompt'.
  863.  
  864. 
  865. File: pcl-cvs.info,  Node: Movement commands,  Next: Marking files,  Prev: Updating the directory,  Up: Commands
  866.  
  867. Movement Commands
  868. =================
  869.  
  870.    You can use most normal Emacs commands to move forward and backward
  871. in the buffer.  Some keys are rebound to functions that take advantage
  872. of the fact that the buffer is a pcl-cvs buffer:
  873.  
  874. `SPC'
  875. `C-n'
  876. `n'
  877.      These keys move the cursor one file forward, towards the end of the
  878.      buffer (`cookie-next-cookie').
  879.  
  880. `C-p'
  881. `p'
  882.      These keys move one file backward, towards the beginning of the
  883.      buffer (`cookie-previous-cookie').
  884.  
  885. 
  886. File: pcl-cvs.info,  Node: Marking files,  Next: Committing changes,  Prev: Movement commands,  Up: Commands
  887.  
  888. Marking files
  889. =============
  890.  
  891.    Pcl-cvs works on a set of "selected files" (*note Selected files::.).
  892. You can mark and unmark files with these commands:
  893.  
  894. `m'
  895.      This marks the file that the cursor is positioned on.  If the
  896.      cursor is positioned on a directory all files in that directory
  897.      will be marked.  (`cvs-mode-mark').
  898.  
  899. `u'
  900.      Unmark the file that the cursor is positioned on. If the cursor is
  901.      on a directory, all files in that directory will be unmarked.
  902.      (`cvs-mode-unmark').
  903.  
  904. `M'
  905.      Mark *all* files in the buffer (`cvs-mode-mark-all-files').
  906.  
  907. `ESC DEL'
  908.      Unmark *all* files (`cvs-mode-unmark-all-files').
  909.  
  910. `DEL'
  911.      Unmark the file on the previous line, and move point to that line
  912.      (`cvs-mode-unmark-up').
  913.  
  914. 
  915. File: pcl-cvs.info,  Node: Committing changes,  Next: Editing files,  Prev: Marking files,  Up: Commands
  916.  
  917. Committing changes
  918. ==================
  919.  
  920. `c'
  921.      All files that have a "need to be checked in"-marker (*note Buffer
  922.      contents::.) can be checked in with the `c' command.  It checks in
  923.      all selected files (*note Selected files::.) (except those who
  924.      lack the "ci"-marker - they are ignored).  Pressing `c' causes
  925.      `cvs-mode-commit' to be run.
  926.  
  927.      When you press `c' you will get a buffer called
  928.      `*cvs-commit-message*'.  Enter the log message for the file(s) in
  929.      it.  When you are ready you should press `C-c C-c' to actually
  930.      commit the files (using `cvs-edit-done').
  931.  
  932.      Normally the `*cvs-commit-message*' buffer will retain the log
  933.      message from the previous commit, but if the variable
  934.      `cvs-erase-input-buffer' is set to a non-`nil' value the buffer
  935.      will be erased.  Point and mark will always be located around the
  936.      entire buffer so that you can easily erase it with `C-w'
  937.      (`kill-region').
  938.  
  939.      If you are editing the files in your emacs an automatic
  940.      `revert-buffer' will be performed.  (If the file contains `$Id$'
  941.      keywords `cvs commit' will write a new file with the new values
  942.      substituted.  The auto-revert makes sure that you get them into
  943.      your buffer). The revert will not occur if you have modified your
  944.      buffer, or if `cvs-auto-revert-after-commit' is set to `nil'.
  945.  
  946. 
  947. File: pcl-cvs.info,  Node: Editing files,  Next: Getting info about files,  Prev: Committing changes,  Up: Commands
  948.  
  949. Editing files
  950. =============
  951.  
  952.    There are currently three commands that can be used to find a file
  953. (that is, load it into a buffer and start editing it there).  These
  954. commands work on the line that the cursor is situated at.  They ignore
  955. any marked files.
  956.  
  957. `f'
  958.      Find the file that the cursor points to.  Run `dired' (*note
  959.      Dired: (Emacs)Dired.) if the cursor points to a directory
  960.      (`cvs-mode-find-file').
  961.  
  962. `o'
  963.      Like `f', but use another window
  964.      (`cvs-mode-find-file-other-window').
  965.  
  966. `A'
  967.      Invoke `add-change-log-entry-other-window' to edit a `ChangeLog'
  968.      file.  The `ChangeLog' will be found in the directory of the file
  969.      the cursor points to.
  970.      (`cvs-mode-add-change-log-entry-other-window').
  971.  
  972. 
  973. File: pcl-cvs.info,  Node: Getting info about files,  Next: Adding and removing files,  Prev: Editing files,  Up: Commands
  974.  
  975. Getting info about files
  976. ========================
  977.  
  978.    Both of the following commands can be customized.  *Note
  979. Customization::.
  980.  
  981. `l'
  982.      Run `cvs log' on all selected files, and show the result in a
  983.      temporary buffer (`cvs-mode-log').
  984.  
  985. `s'
  986.      Run `cvs status' on all selected files, and show the result in a
  987.      temporary buffer (`cvs-mode-status').
  988.  
  989. 
  990. File: pcl-cvs.info,  Node: Adding and removing files,  Next: Undoing changes,  Prev: Getting info about files,  Up: Commands
  991.  
  992. Adding and removing files
  993. =========================
  994.  
  995.    The following commands are available to make it easy to add and
  996. remove files from the CVS repository.
  997.  
  998. `a'
  999.      Add all selected files.  This command can be used on `Unknown'
  1000.      files (see *note File status::.).  The status of the file will
  1001.      change to `Added', and you will have to use `c'
  1002.      (`cvs-mode-commit', see *note Committing changes::.) to really add
  1003.      the file to the repository.
  1004.  
  1005.      This command can also be used on `Removed' files (before you commit
  1006.      them) to resurrect them.
  1007.  
  1008.      Selected files that are neither `Unknown' nor `Removed' will be
  1009.      ignored by this command.
  1010.  
  1011.      The command that is run is `cvs-mode-add'.
  1012.  
  1013. `r'
  1014.      This command removes the selected files (after prompting for
  1015.      confirmation).  The files are `rm'ed from your directory and
  1016.      (unless the status was `Unknown'; *note File status::.) they will
  1017.      also be `cvs remove'd.  If the files were `Unknown' they will
  1018.      disappear from the buffer.  Otherwise their status will change to
  1019.      `Removed', and you must use `c' (`cvs-mode-commit', *note
  1020.      Committing changes::.) to commit the removal.
  1021.  
  1022.      The command that is run is `cvs-mode-remove-file'.
  1023.  
  1024. 
  1025. File: pcl-cvs.info,  Node: Undoing changes,  Next: Removing handled entries,  Prev: Adding and removing files,  Up: Commands
  1026.  
  1027. Undoing changes
  1028. ===============
  1029.  
  1030. `U'
  1031.      If you have modified a file, and for some reason decide that you
  1032.      don't want to keep the changes, you can undo them with this
  1033.      command.  It works by removing your working copy of the file and
  1034.      then getting the latest version from the repository
  1035.      (`cvs-mode-undo-local-changes'.
  1036.  
  1037. 
  1038. File: pcl-cvs.info,  Node: Removing handled entries,  Next: Ignoring files,  Prev: Undoing changes,  Up: Commands
  1039.  
  1040. Removing handled entries
  1041. ========================
  1042.  
  1043. `x'
  1044.      This command allows you to remove all entries that you have
  1045.      processed.  More specifically, the lines for `Updated' files
  1046.      (*note File status::. and files that have been checked in (*note
  1047.      Committing changes::.) are removed from the buffer.  If a
  1048.      directory becomes empty the heading for that directory is also
  1049.      removed.  This makes it easier to get an overview of what needs to
  1050.      be done.
  1051.  
  1052.      The command is called `cvs-mode-remove-handled'.  If
  1053.      `cvs-auto-remove-handled' is set to non-`nil' this will
  1054.      automatically be performed after every commit.
  1055.  
  1056. `C-k'
  1057.      This command can be used for lines that `cvs-mode-remove-handled'
  1058.      would not delete, but that you want to delete
  1059.      (`cvs-mode-acknowledge').
  1060.  
  1061. 
  1062. File: pcl-cvs.info,  Node: Ignoring files,  Next: Viewing differences,  Prev: Removing handled entries,  Up: Commands
  1063.  
  1064. Ignoring files
  1065. ==============
  1066.  
  1067. `i'
  1068.      Arrange so that CVS will ignore the selected files.  The file
  1069.      names are added to the `.cvsignore' file in the corresponding
  1070.      directory.  If the `.cvsignore' doesn't exist it will be created.
  1071.  
  1072.      The `.cvsignore' file should normally be added to the repository,
  1073.      but you could ignore it also if you like it better that way.
  1074.  
  1075.      This runs `cvs-mode-ignore'.
  1076.  
  1077. 
  1078. File: pcl-cvs.info,  Node: Viewing differences,  Next: Emerge,  Prev: Ignoring files,  Up: Commands
  1079.  
  1080. Viewing differences
  1081. ===================
  1082.  
  1083. `d'
  1084.      Display a `cvs diff' between the selected files and the RCS version
  1085.      that they are based on.  *Note Customization:: describes how you
  1086.      can send flags to `cvs diff'.  If CVS-DIFF-IGNORE-MARKS is set to a
  1087.      non-`nil' value or if a prefix argument is given (but not both) any
  1088.      marked files will not be considered to be selected.
  1089.      (`cvs-mode-diff-cvs').
  1090.  
  1091. `b'
  1092.      If CVS finds a conflict while merging two versions of a file
  1093.      (during a `cvs update', *note Updating the directory::.) it will
  1094.      save the original file in a file called `.#FILE.VERSION' where
  1095.      FILE is the name of the file, and VERSION is the RCS version
  1096.      number that your file was based on.
  1097.  
  1098.      With the `b' command you can run a `diff' on the files
  1099.      `.#FILE.VERSION' and `FILE'.  You can get a context- or Unidiff by
  1100.      setting `cvs-diff-flags' - *note Customization::..  This command
  1101.      only works on files that have status `Conflict' or `Merged'.
  1102.  
  1103.      If CVS-DIFF-IGNORE-MARKS is set to a non-`nil' value or if a
  1104.      prefix argument is given (but not both) any marked files will not
  1105.      be considered to be selected.  (`cvs-mode-diff-backup').
  1106.  
  1107. 
  1108. File: pcl-cvs.info,  Node: Emerge,  Next: Reverting your buffers,  Prev: Viewing differences,  Up: Commands
  1109.  
  1110. Running emerge
  1111. ==============
  1112.  
  1113. `e'
  1114.      Invoke `emerge' on one file.  This command works slightly different
  1115.      depending on the file status.
  1116.  
  1117.     `Modified'
  1118.           Run `emerge-files' with your working file as file A, and the
  1119.           latest revision in the repository as file B.
  1120.  
  1121.     `Merged'
  1122.     `Conflict'
  1123.           Run `emerge-files-with-ancestor' with your working file (as
  1124.           it was prior to your invocation of `cvs-update') as file A,
  1125.           the latest revision in the repository as file B, and the
  1126.           revision that you based your local modifications on as
  1127.           ancestor.
  1128.  
  1129.      *Note:* CVS has already performed a merge.  The resulting file is
  1130.      not used in any way if you use this command.  If you use the `q'
  1131.      command inside `emerge' (to successfully terminate the merge) the
  1132.      file that CVS created will be overwritten.
  1133.  
  1134. 
  1135. File: pcl-cvs.info,  Node: Reverting your buffers,  Next: Miscellaneous commands,  Prev: Emerge,  Up: Commands
  1136.  
  1137. Reverting your buffers
  1138. ======================
  1139.  
  1140. `R'
  1141.      If you are editing (or just viewing) a file in a buffer, and that
  1142.      file is changed by CVS during a `cvs-update', all you have to do
  1143.      is type `R' in the *cvs* buffer to read in the new versions of the
  1144.      files.
  1145.  
  1146.      All files that are `Updated', `Merged' or in `Conflict' are
  1147.      reverted from the disk.  Any other files are ignored.  Only files
  1148.      that you were already editing are read.
  1149.  
  1150.      An error is signalled if you have modified the buffer since it was
  1151.      last changed. (`cvs-mode-revert-updated-buffers').
  1152.  
  1153. 
  1154. File: pcl-cvs.info,  Node: Miscellaneous commands,  Prev: Reverting your buffers,  Up: Commands
  1155.  
  1156. Miscellaneous commands
  1157. ======================
  1158.  
  1159. `M-x cvs-byte-compile-files'
  1160.      Byte compile all selected files that end in .el.
  1161.  
  1162. `M-x cvs-delete-lock'
  1163.      This command can be used in any buffer, and deletes the lock files
  1164.      that the *cvs* buffer informs you about.  You should normally
  1165.      never have to use this command since CVS tries very carefully to
  1166.      always remove the lock files itself.
  1167.  
  1168.      You can only use this command when a message in the *cvs* buffer
  1169.      tells you so.  You should wait a while before using this command
  1170.      in case someone else is running a cvs command.
  1171.  
  1172. `q'
  1173.      Bury the *cvs* buffer. (`bury-buffer').
  1174.  
  1175.